package service

import "cgs-server/server/store"

type Service interface {
	Bim() BimSrv
	Workflow() WorkflowSrv
	Upload() UploadSrv
}

type service struct {
	// store
	store store.Factory
}

func (s *service) Upload() UploadSrv {
	return newUploadSrv(s)
}

func (s *service) Workflow() WorkflowSrv {
	return newWorkflowSrv(s)
}

// NewService return Service interface
func NewService(store store.Factory) Service {
	return &service{store: store}
}

func (s *service) Bim() BimSrv {
	return newBimSrv(s)
}
